查看原文
其他

知识图谱研讨实录03丨肖仰华教授带你读懂词汇挖掘与实体识别

The following article is from 知识工场 Author 知识工场


知识图谱是一种大规模语义网络,已经成为大数据时代知识工程的代表性进展。

知识图谱技术是实现机器认知智能和推动各行业智能化发展的关键基础技术。由复旦大学肖仰华教授策划的《知识图谱:概念与技术》课程体系,已在国内进行了多次巡回演讲,受到参会人员一致好评。

课程主要目的和宗旨是系统讲述知识图谱相关知识,让同学们对知识图谱的理论和技术有一个系统的认知。本实录来自该课程老师和同学的研讨。

下面让我们通过第三章课程《词汇挖掘与实体识别》的33条精华研讨,来进一步学习了解知识图谱技术内幕。文末可查看更多章节精华回顾。

本课程配套教材《知识图谱:概念与技术》。


/ 以下为课程第三章《词汇挖掘与实体识别》的研讨实录 /

1丨深度学习相比于传统机器学习有何优点?ML的三个关键要素分别是什么?


 学生:

深度学习相比于传统机器学习的优点是:1. 降低了专家特征定义的代价;2. 捕捉隐式特征;

3. 引入多个中间层的深度神经网络可以表达复杂的非线性函数映射。

ML的三个关键要素是:1. 模型选择,也就是F的确定;2. 优化准则,也就是L的确定;

3. 优化方法,也就是优化问题求解过程。

2丨机器学习任务按照监督方式有哪几种典型分类?基本内涵是什么?


 学生:

监督学习:给定完整的、有标签的数据进行训练,包含分类和回归。半监督学习:少数数据有标签,通过不同方法扩展有标签的数据集。弱监督学习:利用大量容易获得的弱标注数据提升机器学习的性能。无监督学习:主要是聚类、密度估计、降维等,给定没有标签的数据学习模式。

3丨前馈神经网络与线性感知器以及循环神经网络有何差别?

 学生:前馈神经网络是多层感知器,是非线性感知器,是单向无反馈的。线性感知器可以通过最优化方法对数据集进行分类,学习计算出超平面。循环神经网络(Recurrent Neural Network,RNN)是一类专用于处理序列数据的神经网络模型,只处理一个单一的输入单元和上一个时间点的隐藏层信息,可以反馈信息。

4丨卷积神经网络如何降低全连接网络的参数复杂性?

 学生:CNN 首先在卷积层通过使用 kernel 进行局部的矩阵运算对数据进行降维,然后在池化层通过一些最大值或求平均的方法对矩阵进行再一次的降维。利用卷积神经网络,引入卷积操作,代替全连接层的矩阵运算。

 肖仰华老师:局部连接:每个神经元不再和上一层的所有神经元相连,而只和一小部分神经元相连。这样就减少了很多参数。权值共享:一组连接可以共享同一个权重,而不是每个连接有一个不同的权重,这样又减少了很多参数。下采样:可以使用 Pooling 来减少每层的样本数,进一步减少参数数量,同时还可以提升模型的鲁棒性。

5丨图像数据处理和序列数据处理分别适用哪些深度神经网络模型?

 学生:图像数据处理适合用卷积神经网络;序列数据处理适合用循环神经网络。

6丨什么是注意力机制?评估方法有哪些?

 学生:注意力机制指的是模型在每一阶段的输出(例如,翻译任务中生成句子的每一个词)只需要从输入中的某些片段计算产生,而不需要处理整个输入。

评估方法:加性模型、点积模型、缩放点积模型、双线性模型。

 肖仰华老师:加性模型、点积模型、缩放点积模型、双线性模型严格来说是各类 attention 的具体实现方式。

7丨常见NLP任务有哪些?分别是什么内容?输入输出是什么?

 学生:

分词:输入一段文本,输出词的列表。

分句:输入一段文本,输入句子列表。

词性标注:输入一个已经分好词的序列,为里面的每个词打上词性类别标签。

命名实体识别:输入一段文本,输入文本里面的实体及其类别,如人名,地名,组织名。

依存句法分析:输入一个句子,输出一颗依赖解析树。

指代消解:输入一段文本,输出一个一个共指集合,集合中包含了指代同一个事物的词语。

 肖仰华老师:大家要注意 NLP 的几个层面,lexical,syntactic,semantic等等,各类具体的任务都可以归到这几大类。semantic 层面的内容与 KG 关系是极为密切的。KG 与 NLP 良性互动是现在最为热门的研究话题,KG 如何提升 NLP,NLP 如何实现更好的 KG,这两个方向都是值得关注的方向。

8丨文本向量化表示有哪些方法?基本思想分别是什么?

 学生:

离散表示:one-hot(在语料库中,为每个字/词编码一个索引,根据索引进行 one-hot 表示,具有稀疏性。)、词袋表示(词袋表示常用于文本表示,直接将文本中单词的 one-hot 向量进行相加。)、N-Gram表示(与词袋模型原理相似,将相邻N个单词进行索引编码。比如,Bi-Gram 是将相邻两个单词进行索引。)

分布式表示:基于词计数( Word counting,根据大型文本语料库中特定字词与临近字词共同出现的统计值表达词向量)、基于预测(将词看作待学习的参数,根据学习的词向量建立自然语言的预测模型,往往伴随着语言模型的学习过程。)。

 肖仰华老师:这里要提醒大家,基于语言模型的文本表示是当下的研究热点。19年 acl 上最热的话题就是预训练语言模型。

9丨领域短语质量从哪几个角度评估?有哪些统计指标特征?

学生:领域词汇挖掘指的是从给定的领域语料中自动挖掘属于该领域的高质量词汇的过程。高频率:一个 N-Gram 在给定的文档集合中要出现得足够频繁才能被视作高质量短语。比如,“COVID-19”。统计指标有:

一致性:N-Gram 中不同单词的搭配是否合理或者是否常见。比如,“卷积神经网络”与“卷积神”。信息量:一个高质量短语应该传达一定的信息,表达一定的主题或者概念。比如,“机器学习”与“这篇论文”。完整性:一个高质量短语还必须在特定的上下文中是一个完整的语义单元。比如,“vector machine” vs “support vector machine”。

10丨领域短语挖掘和LDA、关键词抽取、新词发现的区别是什么?

 学生:LDA主题模型的输入是若干篇文档,输出是每篇文档的主题分布和每个主题的词分布,根据这两个分布可以得到每篇文档中不同词的分数。领域短语挖掘的输入不区分多篇文档,而是直接将它们合并位一个大文档,输出是该领域的高质量短语。

关键词抽取是从语料中提取最重要、最有代表性的短语,抽取的短语数量一般比较少。

新词发现的主要目标是发现词汇库中不存在的新词汇,而领域短语挖掘不区别新短语和已有短语。

 肖仰华老师:在实际应用中,先做词汇挖掘,再做 topic model 挖掘实现 phrase LDA 是很有道理的。

11丨如何判断一个短语是高质量短语的典型统计指标是什么?基本原则分别是什么?

 学生:

TF-IDF:某短语在领域语料中经常出现而在外部文档中很少互相,则该短语很可能是该领域的高质量短语。C-value:考虑了短语长度、以及父子短语对词频统计的影响。NC-value:在C-value的基础上充分利用了短语丰富的上下文信息。PMI:挖掘组成部分一致性较高的短语。

左(右)邻字熵:挖掘左(右)邻丰富的短语。

12丨无监督短语挖掘方法的主要流程有哪些?和有监督的方法主要区别在哪里?

 学生:

基于无监督学习(缺乏标注数据的场景)的领域短语挖掘过程:准备人工智能语料,生成候选短语,计算统计特征,进行质量评分。基于监督学习(有标注数据的场景)的领域短语挖掘过程:准备人工智能语料,生成候选短语,计算统计特征并进行样本标注,进行分类器学习,进行质量评分。优化过后,在质量评分阶段之后,迭代地进行生成候选短语、计算统计特征并标注样本、分类器学习、高质量评分四步,知道候选词得分收敛。

相比之下,无监督方法缺乏人工标注、分类器学习和循环迭代过程。

13丨Skip-Gram 和 CBOW 的基本思想分别是什么?负采样为什么解决了 Skip-Gram 中计算困难问题?

 学生:

1.Skip-Gram:根据中间词预测上下文词语。2.CBOW:根据上下文单词预测中间缺失的单词。3.Skip-Gram方法计算困难的关键在于训练网络的时候,输出层使用了 softmax ,分母需要对词汇表进行求和,这样加大了参数的运算开销。而负采样则不需要使用词汇表的全部单词,只需要随机采样固定数目的词汇即可。

14丨词向量表示的分布式假设是什么意思?

 学生:两个语义相似的词通常具有类似的上下文。

 肖仰华老师:这个假设在NLP相关文献中是经常出现的,大家一定要真正理解。

15丨哪个指标能够判断“苏格拉底”是比“苏格拉”更好的词汇?

 学生:左(右)邻字熵。因为“苏格拉”的右邻字比较集中,总是“底”。

 师:字熵,“苏格拉”由于后面常常接了“底”,因而熵会非常低,而“苏格拉底”作为完整人名,后面可以接各种各样的词汇,熵会相对大一些。

16丨哪个指标能够判断“形而上学”比“形而”+“上学”是更好的词汇? 学生PMI(点互信息)。因为“形而”和“上学”总是一起出现,也就是说它们联合出现的概率远大于两者在独立情况下随机共现的概率。 肖仰华老师:PMI 的输入本质上“形而上学”的某个拆分方式,每个拆分方式求得一个 PMI 值,最后取各种拆分方式下的最大值。17丨比较 NC-value 与 C-value 有何不同? 学生:NC-value 在 C-value 的基础上进一步利用了短语丰富的上下文信息。也就是说某个词汇的上下文越倾向于出现在高质量短语的上下文中,那么这个词汇的质量也就越高。18丨试讨论如何融合评估候选短语质量的统计指标? 学生:加权平均,或者训练一个基于多个特征的机器学习模型(如决策树)。 肖仰华老师:多指标融合,除了加权平均,还有常见的 noisy-or model。noisy-or model的特点是 noisy-or 的结果一定大于任一 xi,所以,只要有一个 xi 很大,融合后就更大,所以 noisy-or 用于信号放大。而连乘一定小于任一 xi,要求更为严格。真实的数据往往是稀疏的有噪音的,所以通常是使用 noisy-or。19丨同义词有哪些典型形式?举例说明。 同学A:X 亦称 Y,X 也叫 Y,X 又称 Y,X(Y) 括号,X 简称 Y, X 俗称 Y。复旦大学简称复旦。 同学B:

(1)不同国家的语言互译(中国对应的英文是China)。

(2)具有相同含义的词(如开心和快乐)。

(3)中国人的字、名、号、雅称、尊称、官职、谥号等(如李白与青莲居士)。

(4)动植物、药品、疾病等的别称或俗称(土豆和马铃薯)。

(5)简称(河南简称为“豫”)。 肖仰华老师:大家回答挺好。大家可以看一下这个词条,这里罗列了数百种同义词的规则:“https://baike.baidu.com/item/百度百科:跳转关系”。我们的一个研究生曾经把这里罗列的大部分规则都实现了,这是非常有意义的。自然语言中的同义形式可以非常复杂。20丨基于模式的同义词挖掘方法有何局限?举例说明。 学生A:1)需要花费大量人力手工定义模式。2)召回率有限。3)有些同义词难以被特定的模式描述。比如“谦虚”,“谦逊”这对同义词很难有特定的模式,我们不会说“小王是一个很谦虚,又称谦逊的人”。学生B:

1)高准确率,低召回率,泛化性差。

2)无法挖掘出超出定义模式的同义词对。

3)有些同义词对在句子出现没法明显的模式。

4)有些同义词对很少同时出现。

5)模式是语料特定的,语言特定的,需要手工定义代价高。 肖仰华老师:第一个回答比较有代表性。模式不一定能抽取出所有可能的同义词对,因为有些同义词很少在在临近的文本中被同时提及。所以大家也不要盲目迷信基于模式的方法。21丨自举法的主要思路和基本过程是什么? 学生:自举法是对基于模式匹配的方法的改进,从一些种子样本或者预定义模式出发,不断地从语料中学习同义词在文本中的新表达模式,从而提高召回率。自举法是一个循环迭代的过程,每轮循环发现新模式、召回新同义词对,循环往复直至达到终止条件。(1)准备数据。首先,准备语料,定义初始模式。初始模式默认被标记为“新模式“。(2)模式匹配。采用前面介绍的“模式匹配“方法,使用”所有模式“中的每个”新模式“对语料进行模式匹配,发现新的同义词对。(3)模式发现。在预料此中对每一个新的同义词进行搜索,以寻找新的模式。例如,给定同义词对(西红柿,番茄),在语料中搜索出现同义词的句子,不难匹配如下几种模式:①“西红柿(番茄)“,②”西红柿,又名番茄“,③”西红柿,又称番茄“,等等。将这几种模式中的同义词用X和Y进行替换,可以得到:①”X(Y)“,②”X,又名Y“,③”X,又称Y“等模式。然后将发现的新模式加入现有的模式库中,并标记为”新模式“。(4)重复(2)~(3)步,直到达到终止条件(准确率和召回率达到一定水平,或者无法再发现更多的同义词对)。 肖仰华老师:大家的回答都挺好。bootstrapping 是提升基于模式抽取的召回率的重要方式。人不能穷举所有的模式,所以,我们寄希望于从语料中学习出新的模式。bootstrapping 方法是早年信息抽取最为重要的方法,有一篇70年代的关于 hearst pattern 的 bootstrapping 方法的论文,大家可以看看。22丨图上的模块度核心思想是什么? 学生A:将同义词发现问题建模为词语组成的语义关联图上的社团发现问题,每个社团对应一组同义词。 学生B:模块度值的大小主要取决于网络中结点的社区分配C,即网络的社区划分情况,可以用来定量的衡量网络社区划分质量,其值越接近1,表示网络划分出的社区结构的强度越强,也就是划分质量越好。因此可以通过最大化模块度Q来获得最优的网络社区划分。 学生C在社团内部联系紧密,社团外联系稀疏。 学生D:计算节点之间存在一条边在统计意义下的显著性,也就是说,同一社区内的节点的边的数量应该尽可能大于在随机图模型下存在的边的期望值,而不同社区间连接的边应该尽可能地少。 肖仰华老师:最后这个回答才是正确的。绝大多数同学回答的都是使用图上的社团划分解决同义词挖掘的思路,但我问的是 modularity 的思想,这也是我希望大家能够掌握的。这个思想会反复出现在很多度量中,其背后的统计思想如果大家不明白,就好比你对统计学一无所知。如果你能在你的问题中设计出基于这一思想的度量,会给你的论文增色不少,我们很多同学习惯于用一些酷炫的公式,但很少理解其背后的道理,这是远远不够的。我经常审到一类论文,看上一堆令人眼花缭乱的公式,但是用得没有道理,原因就在于大家对很多方法公式理解不深刻,希望大家认真理解这个Modularity Q。23丨搜索日志挖掘同义词的基本思想是什么? 学生A对于搜索引擎上两个不同的搜索短语 A 和 B,如果用户总是倾向于点击返回的结果网页中相同网页,则 A 和 B 很可能是同义词。 肖仰华老师:这个方法可能带来怎样的问题呢? 学生A:A和B可能只是关联,而非同义词。 学生B:搜美国总统和搜特朗普的可能是相同网页,但是会变。 肖仰华老师:第一个回答是很好的,可能只是相关而非同义词。比如搜索“吴京”,你可能点击了“战狼”,你不能说它们是同义词,所以这个方法要做进一步的筛选。那么再进一步问大家,你会如何从相关词中筛选出同义词呢?他们共现的高频词汇是否重合,是有效特征之一,还有更多的可用特征。大家沿着这个思路仍有机会发表论文,比如我们能否 pretrain 的 word embedding 也用上。我还没到相关 paper,大多数都还是传统特征。24丨缩略词与同义词有何联系与差别? 学生A:缩略词是同义词的一种重要形式。缩略词的检测与抽取在方法上与同义词的检测和抽取类似,但是比起同义词,缩略词在文本中出现的规则往往更简单。 学生B:缩略词指的是一个词或者短语的缩略形式,缩略词是同义词的一种重要形式,但同义词远不止缩略词一种形式;缩略词是与全称强相关的,一般要求保留来自全称的部分字符,而同义词之间再形式上可能完全不相关。25丨缩略词挖掘有哪些基本的任务?区别是什么? 学生A:基本任务:

1.缩略词的检测和抽取。

2.缩略词的预测。区别:缩略词的检测和抽取是通过分析大规模语料自动挖掘出缩写词对,要求缩略词对必须在语料中出现。缩略词的预测则只依赖于全称的相关文本,希望通过自然语言模型自动预测全称的可能缩略词形式。     学生B:缩略词抽取

1.依赖文本提及实体及其缩略词的方式(模式),进行抽取。

2.依赖语料。缩略词预测

1.根据规则或者文本生成模型,从实体名称生成相应的缩略词。

2.给定规则或模型后,不依赖语料。 肖仰华老师:大家掌握的都挺好。其实生成模型在知识获取 KG 构建中用的极少,我们实验室也才做了一两个这方面的工作。一般大家提到“知识获取“,想到的主要是靠抽取模型,很少考虑到用生成模型。所以缩略词预测(生成)是很有启发意义的,如果同学想选前沿 research topic,这个机会很大。26丨英文缩略词有哪些基本形式?中文缩略词与英文在形式上有何不同? 学生:英文缩略词的基本形式:①采用短语中每个词或关键字的首字母组成缩写;②采用词的前两个或三个字母组成缩略词;③省略单词的元音字母,保留辅音/关键辅音字中文缩略词形式更复杂,常常不存在词边界(即词与词之间不存在明显的界限),一个实体或短语常常由多个词组成,每个词包含的字数不同。缩略词往往从每个词中选取一个或多个字组成,剩下的字直接省略。 肖仰华老师:大家回答的挺好。在我的书中,缩略词挖掘是单独一节。但是,相关 paper 是很少的,这实际上是研究与落地的脱节。之所以以一节的篇幅介绍缩略词,主要是因为实际应用中,尤其是在领域知识图谱落地中,能够理解缩略词,基本就能解决搜索理解的大部分问题。在工业应用中,大量使用缩写。中文缩略词的论文很少,我觉得仍有很多研究机会,中文缩略词的生成规则也远比我们想象的复杂。它不单单是个语言问题,还是个社会问题,比如我在视频中提到的“南大”的例子。27丨基于 CRF 的缩略词预测有哪些典型特征? 学生:

1.字符集特征:如“厅”,“局”等表示机构的字常常会保留。

2.词级别特征:包括词本身如“大学”常常会被缩写为“大”,以及词性如地名大概率被保留。

3.位置特征:如一个词中第一个字和最后一个字有更大的机会被保留。

4.词的关联特征:如实体以“大学”结尾时实体中的地名常会被保留。28丨实体、命名实体、实体提及三者有何不同? 学生A:实体:认知概念,指代世界上存在的某个特定事物;有不同的表示形式,或者不同的提及方式。命名实体:是单词或短语;具有标识和区别作用。实体指代:实体在文本中的表示形式通常被称作实体指代。 学生B:命名实体是一个词或短语,它可以在具有相似属性的一组事物中清楚地标识出某一事物(例如,小明和一群朋友,可以使用“小明”这个命名实体清楚的从一群人中标识出小明这个人)。命名实体识别(NER)则是指在文本中定位命名实体的边界并分类到预定义类型集合的过程。实体是一个认知概念,指代世界上存在的某个特定事物。命名实体可以理解为有文本标识的实体。实体在文本中的表示形式通常被称作实体指代(Mention,或者直接被称为指代)。比如林俊杰,在文本中有时被称作“JJ Lin”,有时又被称作“JJ”。29丨有哪些类型的NER任务?区别是什么? 学生A:粗粒度命名实体识别:这类任务预定义了粗粒度的实体类型,包括人物、机构、地点、货币、时间和百分比表达式等共六种,并且为每个命名实体只分配一种类型。细粒度命名实体识别(Fine-grained Entity Typing)任务,这一任务通常预定义一个较大的实体类型集合(例如,包含演员、医生、运动员、导演、公司、教育机构等 100 多个类型标签),一个实体可以被分类到多个类型标签,比如“吴京自导自演战狼 2”中的“吴京”既是演员又是导演。 学生B:1)粗粒度、细粒度区别:比如识别一个人物,粗粒度的任务识别的是 person, 而细粒度需要进一步细分为导演,演员等。2)多标签、单标签区别:多标签是给实体打上多个标签,单标签是给实体打上一个标签。30丨基于协同训练的NER的基本思想是什么? 学生:一种半监督学习方法。即同时学习两套实体识别规则,通过一套规则标注新语料中的实体,将其作为样本对另一套规则进行弱监督训练,经过训练的另一套规则再标注新语料中的实体为上一套规则进行弱监督训练。 肖仰华老师:书中的 co-training 是学习规则,有时也可以学习机器学习模型。co-training 是缓解样本稀缺、提升机器学习性能的一种非常重要的学习方式。当存在两种视角时,可以尝试 co-training 。我们很多同学只会简单的融合,这其实也是一种融合方式,如果你能把你的发方法用上 co-training 框架,就是一种非常 elegant 的 solution ,我们的研究生不能只停留在流水账式解决问题的水平,肚子里有一些基本解决问题的 solution framework 。31丨基于深度学习的 NER 典型架构有哪些组成? 学生:分布式标识(如词向量,字向量,词典特征,词性标注),上下文编码器( CNN, RNN , LSTM 语言模型),标签解码器( softmax,CRF,RNN )32丨深度 NER 模型的输入表示一般包含哪几部分? 学生A:词级别表示、字级别表示、词典词汇相似性等其他特征 学生B:词级别(每个词用向量表示)。字级别(每个字用向量表示)。混合表示(除了结合词级别、字级别向量表示,还加入其它特征,如词典、词汇相似性)。 肖仰华老师:需要提一下的是,实际应用中,在上述表示的基础上,往往会进行表示增强。关于输入、输出的表示增强。仍然是个开放性问题。我们曾有一篇 IJCAI paper 做了初步尝试,这方面才刚刚开始。希望大家在自己设计 DL model 时,好好想想如何增强你的 input 与 output 。33丨深度 NER 中的标签解码器有哪些典型的实现方式?各自优缺点是什么? 学生:全连接+softmax:将序列标注视作一个分类问题,独立地预测每个单词的标签,但容易出现错误。CRF:充分考虑了输出标签之间的关系,有效建模最终预测标签之间的约束关系,提高准确率。RNN:将编码层的向量映射为标签序列,当实体数量很大时,RNN 更快。 肖仰华老师:关于 DL 模型的设计,我们必须知道什么时候选择什么架构。比如什么情况适合选择 cnn、rnn,各种机制解决了什么问题等等。大部分同学,除非你是做机器学习理论研究的。都在用 DL 模型,用的合理就非常关键。


图书推荐

《知识图谱:概念与技术》


肖仰华 等 编著


本书力求涵盖知识图谱相关的基本概念与关键技术,总结了十多个知识图谱工程项目的落地经验。

本书紧密围绕知识图谱开展知识体系的梳理,尽量突出知识图谱与相关学科的差别,尽可能的为大家清晰地界定知识图谱与各分支学科的根本不同。本书注重知识图谱的整个知识体系,从最基础的基本概念、基础理论到设计、技术、模型、方法都做了全面的介绍。

(扫码了解本书详情)


▶ 研讨实录回顾



如果喜欢本文欢迎 在看留言分享至朋友圈 三连

 热文推荐  





点击阅读原文,了解本书详情~

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存